In today's highly automated business environment, organizations are demanding more real time information to mine and analyze behaviors of their customers. This information permits organizations to develop better Customer Relationship Management (CRM) applications and Business Intelligence (BI) solutions to improve relationships with customers of the organizations and corresponding improve the revenues and/or profits of the organizations.
To facilitate better CRM and BI techniques, organizations have developed data warehouses, which organize and link important customer information from a variety of data stores in a centrally accessible data repository. The data warehouses can include information gathered from various online transaction processing (OLTP) applications that record transactions and/or behaviors of customers when the customers interact with the organizations in some way. Various data mining, Word Wide Web (WWW) mining, and Decision Support System (DSS) applications can be used against the data warehouse of an organization to create desired CRM applications.
Moreover, organizations deploy a variety of BI reports that allow the organization to use reporting tools, such as Online Analytical Processing (OLAP) tools (e.g., MicroStrategy, Cognos, and others) to create dimensions, metrics, filters, and templates associated with analyzing and viewing the organizations' data. The created dimensions, metrics, filters, and templates combine to form the BI reports that process against the organizations' data in order to display results in tables and/or graphs. Further, the dimensions, metrics, filters, and templates are stored in a metadata format for use by a specific OLAP tool. And, a schema defines the data format of the metadata. Since the metadata defines the aspects of a BI report, the metadata is a portion of information used when creating an OLAP application. A specific OLAP tool then processes the OLAP application.
Additionally, OLAP applications typically operate off of a multidimensional data store as opposed to a relational database. A multidimensional data store can consider each data hierarchy (e.g., product line, geography, sales region, time period, and the like) as an independent dimension. Also, an OLAP data store need not be as large as a conventional data warehouse, since not all transactional data is required for OLAP applications performing trend analysis. Furthermore, OLAP applications can be used by organizations to analyze data warehouses for understanding and interpreting data. As is clear to one of ordinary skill in the art, well-developed OLAP applications assist an organization in creating better CRM techniques and BI solutions through the use of BI reports.
An important first step, in an organization's process of creating OLAP reports and OLAP applications, is gathering report specifications from a non-technical employee (e.g., business analyst) and providing the specifications to a technical employee. The specifications are textual descriptions defining an OLAP report's appearance and operation. Each step required in initially generating the specifications is inefficient, time consuming, prone to errors, and prone to misinterpretations. For example, before producing specifications potential consumers of the OLAP report are interviewed, findings/requirements are then documented, and the requirements are translated into hardware and software parlance.
Typically, non-technical employees have difficulty translating the specifications into hardware and software terminologies. Moreover, at the same time developers, who consume the specifications in order to produce a desired OLAP report, spend a significant amount of time reading and re-reading the specifications in an effort to understand what was intended by the original author of the specifications and/or to acquire sufficient enough detail to produce the OLAP report or other types of analytical reports for the original author.
As is apparent, there exists a need for providing techniques that better generate report specifications. Moreover, improved interfaces and methods to the specification gathering process are desirable in order to reduce development cycles associated with generating specifications for reports. With such techniques and tools, organizations can more timely and efficiently produce reports, and better utilize and develop an organization's knowledge store associated with gathering and generating specifications.